<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui" template="/paginas/template.xhtml">

	<ui:define name="corpoForm">
		

		<p:confirmDialog message="#{msg.questionConfirmaRemover}"
			appendTo="@(body)" width="250" id="dlgRemoverUsuario"
			header="#{rsc.label_confirmar}" severity="alert"
			widgetVar="confirmacao">
			<h:form id="confirmarForm">
				<p:commandButton value="#{rsc.label_sim}" process="@this"
					styleClass="botao"
					actionListener="#{manterNotificacaoBean.removerUsuario}"
					update=":formNovoNotificacao:listUsuarios"
					oncomplete="confirmacao.hide();" />
				<p:commandButton value="#{rsc.label_nao}" styleClass="botao"
					onclick="confirmacao.hide()" type="button" />
			</h:form>
		</p:confirmDialog>


		<p:confirmDialog message="#{msg.questionConfirmaRemover}"
			appendTo="@(body)" width="250" id="dlgRemoverPerfil"
			header="#{rsc.label_confirmar}" severity="alert"
			widgetVar="confirmacaoPerfil">
			<h:form id="confirmarPerfilForm">
				<p:commandButton value="#{rsc.label_sim}" process="@this"
					styleClass="botao"
					actionListener="#{manterNotificacaoBean.removerPerfil}"
					update=":formNovoNotificacao:listaPerfisAdicionados"
					oncomplete="confirmacaoPerfil.hide();" />
				<p:commandButton value="#{rsc.label_nao}" styleClass="botao"
					onclick="confirmacaoPerfil.hide()" type="button" />
			</h:form>
		</p:confirmDialog>

		<p:dialog id="buscarUsuariosDialog" appendTo="@(body)" width="900"
			height="400" header="#{rsc.label_selecioneUsuarios}"
			widgetVar="dlgUsuarios">

			<h:form id="formAdicionarUsuarios" prependId="false">
				<p:panelGrid columns="1" styleClass="full-width">

					<p:commandButton id="btnAdicionarUsuarios" process="@this"
						styleClass="botao" value="#{rsc.label_adicionarUsuarios}"
						oncomplete="dlgUsuarios.hide();"
						actionListener="#{manterNotificacaoBean.adicionarUsuarios}"
						update="listaSelecioneUsuarios, :formNovoNotificacao:listUsuarios"
						title="#{rsc.label_adicionarUsuarios}" />

				</p:panelGrid>

				<p:panelGrid columns="4">

					<p:outputLabel value="#{rsc.label_pessoa}"
						for="acNotificacaoUsuarios" />

					<p:outputLabel value="#{rsc.label_cpf}" for="txtCPFUsuarios" />

					<p:outputLabel value="#{rsc.label_email} " for="txtEmailUsuarios" />

					<p:spacer />

					<p:autoComplete id="acNotificacaoUsuarios" minQueryLength="3"
						value="#{manterNotificacaoBean.filtro.nome}" effect="fade"
						maxResults="7" size="30"
						completeMethod="#{manterNotificacaoBean.autoCompleteNomeUsuario}">
						<p:ajax event="change"
							listener="#{manterNotificacaoBean.buscarUsuariosPorFiltros}" />
					</p:autoComplete>

					<p:inputText label="#{rsc.label_cpf}" id="txtCPFUsuarios"
						title="#{rsc.label_cpf}" styleClass="cpf"
						value="#{manterNotificacaoBean.filtro.cpf}">
						<p:ajax event="change"
							listener="#{manterNotificacaoBean.buscarResponsavelPorFiltros}" />
					</p:inputText>


					<p:inputText label="#{rsc.label_email}" id="txtEmailUsuarios"
						title="#{rsc.label_email}" styleClass="email" size="30"
						value="#{manterNotificacaoBean.filtro.email}">
						<p:ajax event="change"
							listener="#{manterNotificacaoBean.buscarResponsavelPorFiltros}" />
					</p:inputText>

					<p:commandButton
						actionListener="#{manterNotificacaoBean.buscarUsuariosPorFiltros}"
						icon="ui-icon ui-icon-search" title="#{rsc.label_buscar}"
						update="formAdicionarUsuarios:listaSelecioneUsuarios" />

				</p:panelGrid>


				<p:panelGrid columns="1" styleClass="full-width">
					<p:dataTable emptyMessage="#{msg.nenhumRegistroEncontrado}"
						var="responsavel" id="listaSelecioneUsuarios"
						value="#{manterNotificacaoBean.formulario.usuariosSelecionar}"
						selection="#{manterNotificacaoBean.formulario.usuariosSelecionados}"
						paginator="true" rows="10"
						paginatorPosition="#{rsc.label_paginationPosition}"
						paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
						rowsPerPageTemplate="10,50,150,200">

						<p:ajax event="rowSelectCheckbox" />

						<p:column selectionMode="multiple" style="width:20px" />


						<p:column headerText="#{rsc.label_usuario}">
							<p:outputLabel value="#{responsavel.nome}" />
						</p:column>

						<p:column headerText="#{rsc.label_cpf}">
							<p:outputLabel value="#{responsavel.cpf}" />
						</p:column>

						<p:column headerText="#{rsc.label_email}">
							<p:outputLabel value="#{responsavel.email}" />
						</p:column>

					</p:dataTable>
				</p:panelGrid>

				<p:watermark value="#{rsc.wm_nomeConsulta}"
					for="acNotificacaoUsuarios" />
				<p:watermark value="#{rsc.wm_cpfConsulta}" for="txtCPFUsuarios" />
				<p:watermark value="#{rsc.wm_emailConsulta}" for="txtEmailUsuarios" />
			</h:form>
		</p:dialog>

		<f:event type="javax.faces.event.PreRenderComponentEvent"
			listener="#{manterNotificacaoBean.preRenderNew}" />
		<h:form id="formNovoNotificacao" prependId="false">

			<p:panelGrid columns="3" styleClass="botoes" id="botoes">
				<p:commandButton value="#{rsc.label_salvar}" styleClass="botao"
					action="#{manterNotificacaoBean.salvar}" ajax="false"
					onclick="setTimeout('document.getElementById(\'' + this.id + '\').disabled=true;', 50);"
					rendered="#{p:ifGranted('CRIAR_NOTIFICACAO')}"
					title="#{rsc.title_salvar}" />

				<p:commandButton value="#{rsc.label_cancelar}" styleClass="botao"
					update="growl" action="#{manterNotificacaoBean.cancelar}"
					ajax="false"
					onclick="setTimeout('document.getElementById(\'' + this.id + '\').disabled=true;', 50);"
					title="#{rsc.title_cancelar}" immediate="true">
				</p:commandButton>

			</p:panelGrid>

			<p:panel id="pnlNovoNotificacao"
				header="#{rsc.label_novaNotificacao}" toggleable="true"
				toggleSpeed="500">

				<p:panelGrid columns="2">

					<p:outputLabel value="#{rsc.label_nome}" for="txtNome"
						styleClass="obrigatorio" />

					<p:inputText label="#{rsc.label_nome}" id="txtNome" maxlength="60"
						size="60" title="#{rsc.label_nome}"
						value="#{manterNotificacaoBean.entidade.nome}" />

					<p:outputLabel value="#{rsc.label_descricao}" for="txtDescricao" />


					<p:editor id="txtDescricao"
						value="#{manterNotificacaoBean.entidade.descricao}" maxlength="3000" width="600" />

					<p:outputLabel value="#{rsc.label_leituraObrigatoria}" for="chkLeituraObrigatoria" />

					<p:selectBooleanCheckbox label="#{rsc.label_leituraObrigatoria}" id="chkLeituraObrigatoria"
						title="#{rsc.label_leituraObrigatoria}"
						value="#{manterNotificacaoBean.entidade.leituraObrigatoria}" />

				</p:panelGrid>
			</p:panel>

			<p:panel id="pnlUsuariosNotificados"
				header="#{rsc.label_usuariosNotificados}" toggleable="true"
				toggleSpeed="500">

				<p:commandButton id="btnBuscarUsuarios" process="@this"
					styleClass="botao" value="#{rsc.label_adicionarUsuarios}"
					oncomplete="dlgUsuarios.show();"
					title="#{rsc.label_adicionarUsuarios}" />

				<p:panelGrid columns="1" styleClass="full-width">

					<p:dataTable emptyMessage="#{msg.nenhumRegistroEncontrado}"
						var="status" id="listUsuarios"
						value="#{manterNotificacaoBean.entidade.statusNotificacao}"
						paginator="true" rows="10"
						paginatorPosition="#{rsc.label_paginationPosition}"
						paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
						rowsPerPageTemplate="10,50,150,200">
						<p:column headerText="#{rsc.label_nomeUsuario}">
							<p:outputLabel value="#{status.usuario.nome}" />
						</p:column>

						<p:column headerText="#{rsc.label_perfil}">
							<p:outputLabel value="#{status.usuario.perfil.nome}" />
						</p:column>

						<p:column headerText="#{rsc.label_email}">
							<p:outputLabel value="#{status.usuario.email}" />
						</p:column>

						<p:column headerText="#{rsc.label_celular}">
							<p:outputLabel value="#{status.usuario.celular}" />
						</p:column>

						<p:column styleClass="coluna-acoes"
							headerText="#{rsc.label_acoes}">

							<p:commandButton icon="ui-icon ui-icon-trash"
								title="#{rsc.label_remover}" process="@this"
								oncomplete="confirmacao.show();">
								<f:setPropertyActionListener value="#{status.usuario}"
									target="#{manterNotificacaoBean.formulario.usuarioRemover}" />
							</p:commandButton>

						</p:column>
					</p:dataTable>

				</p:panelGrid>

			</p:panel>
			<p:panel id="pnlPerfisNotificados"
				header="#{rsc.label_perfisNotificados}" toggleable="true"
				toggleSpeed="500">

				<p:panelGrid columns="3" styleClass="full-width">

					<p:outputLabel value="#{rsc.label_perfil}" for="cmbPerfis" />

					<p:selectOneMenu style="width: 200px" styleClass="full-width"
						label="#{rsc.label_perfil}"
						value="#{manterNotificacaoBean.formulario.perfil.id}"
						id="cmbPerfis">
						<f:selectItem itemLabel="#{rsc.label_selecionar}" itemValue="" />
						<f:selectItems value="#{manterUsuarioBean.formulario.perfis}"
							var="c" itemLabel="#{c.nome}" itemValue="#{c.id}" />
					</p:selectOneMenu>


					<p:commandButton id="btnAdicionarPerfil" process="cmbPerfis, @this"
						styleClass="botao" value="#{rsc.label_adicionarPerfil}"
						actionListener="#{manterNotificacaoBean.adicionarPerfil}"
						update="listaPerfisAdicionados"
						title="#{rsc.label_adicionarPerfil}" />


				</p:panelGrid>

				<p:panelGrid columns="1" styleClass="full-width">

					<p:dataTable emptyMessage="#{msg.nenhumRegistroEncontrado}"
						var="perfil" id="listaPerfisAdicionados"
						value="#{manterNotificacaoBean.entidade.perfis}" paginator="true"
						rows="10" paginatorPosition="#{rsc.label_paginationPosition}"
						paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
						rowsPerPageTemplate="10,50,150,200">

						<p:column headerText="#{rsc.label_perfil}">
							<p:outputLabel value="#{perfil.nome}" />
						</p:column>

						<p:column styleClass="coluna-acoes"
							headerText="#{rsc.label_acoes}">

							<p:commandButton icon="ui-icon ui-icon-trash"
								title="#{rsc.label_remover}" process="@this"
								oncomplete="confirmacaoPerfil.show();">
								<f:setPropertyActionListener value="#{perfil}"
									target="#{manterNotificacaoBean.formulario.perfilRemover}" />
							</p:commandButton>

						</p:column>
					</p:dataTable>

				</p:panelGrid>

			</p:panel>



			<p:watermark value="#{rsc.wm_nomeNotificacao}" for="txtNome" />
		</h:form>
	</ui:define>
</ui:composition>

